package principle.template;

/**
 * @author malguy-wang sir
 * @create ---
 */
public abstract class soyaMilk {//豆浆，抽象类
    void select(){ System.out.println("1，选豆子"); }
    abstract void addCondiments();//抽象方法，子类实现
    void soak(){ System.out.println("3，浸泡"); }
    void beat(){ System.out.println("4，打豆浆"); }
    //模板方法可以用final修饰，防止子类覆盖
    final void make(){
        select();
        if(pureSoyaMilk()) addCondiments();
        soak();
        beat();
    }
    boolean pureSoyaMilk(){ return true; }
}
